home *** CD-ROM | disk | FTP | other *** search
/ Suzy B Software 2 / Suzy B Software CD-ROM 2 (1994).iso / stos / stos_89 / stratego / stratego.bas (.txt) next >
Atari STOS Basic  |  1989-07-03  |  123KB  |  630 lines

  1. 1 REM **********************************
  2. 10 GOSUB
  3. 1000 MENU$
  4. 10000 RESTORE
  5. 10005 VARNAME
  6. 10010 FOR
  7. 10020 READ
  8. 10030 VARNAME
  9. 10035 VARNAME
  10. 10037 NEXT
  11. 10040 VARNAME
  12. 10045 VARNAME
  13. 10047 REM ********************
  14. 10048 REM ** Show backsides **
  15. 10049 REM ********************
  16. 10050 FOR
  17. 10060 VARNAME
  18. 10070 VARNAME
  19. 10080 SPRITE
  20. 10090 SPRITE
  21. 10097 REM **************************
  22. 10098 REM ** Show flag if visible **
  23. 10099 REM **************************
  24. 1010 MENU$
  25. 10100 IF
  26. 10110 FOR
  27. 10115 IF
  28. 10120 VARNAME
  29. 10130 IF
  30. 10140 SCREEN COPY
  31. 10150 SCREEN COPY
  32. 10160 VARNAME
  33. 10170 SPRITE
  34. 10190 VARNAME
  35. 10200 IF
  36. 10210 VARNAME
  37. 10290 NEXT
  38. 10297 REM ****************
  39. 10298 REM ** Who begins **
  40. 10299 REM ****************
  41. 1030 MENU$
  42. 10300 VARNAME
  43. 10305 IF
  44. 10310 WAIT
  45. 1050 MENU$
  46. 1060 MENU$
  47. 1065 MENU$
  48. 1070 MENU$
  49. 1080 MENU$
  50. 1090 MENU$
  51. 1100 MENU$
  52. 1110 MENU$
  53. 1120 MENU$
  54. 1130 MENU$
  55. 1150 MENU$
  56. 1160 MENU$
  57. 1180 MENU$
  58. 11997 REM ********************
  59. 11998 REM ** Game main loop **
  60. 11999 REM ********************
  61. 1200 MENU
  62. 12000 SPRITE
  63. 12005 IF
  64. 12010 VARNAME
  65. 12020 REPEAT
  66. 12030 IF
  67. 12040 UNTIL
  68. 12045 IF
  69. 12047 IF
  70. 12050 SPRITE
  71. 12060 GOTO
  72. 12197 REM ***********************
  73. 12198 REM ** Game menu handler **
  74. 12199 REM ***********************
  75. 12200 CLS
  76. 12297 REM ***************************************
  77. 12298 REM ** Continue game after menu interupt **
  78. 12299 REM ***************************************
  79. 1230 ON
  80. 12300 MENU
  81. 12320 VARNAME
  82. 12330 PRINT
  83. 12332 PRINT
  84. 12335 IF
  85. 12340 PRINT
  86. 12345 PRINT
  87. 12350 PRINT
  88. 12355 CLEAR KEY
  89. 12360 MENU
  90. 12365 FOR
  91. 12370 VARNAME
  92. 12375 VARNAME
  93. 12380 IF
  94. 12390 IF
  95. 12400 SPRITE
  96. 12410 NEXT
  97. 12420 GOTO
  98. 12500 VARNAME
  99. 12510 CLEAR KEY
  100. 12996 END
  101. 12997 REM *****************
  102. 12998 REM ** Human plays **
  103. 12999 REM *****************
  104. 13000 VARNAME
  105. 13003 NEXT
  106. 13005 REPEAT
  107. 13010 IF
  108. 13015 IF
  109. 13020 REPEAT
  110. 13030 VARNAME
  111. 13040 IF
  112. 13050 IF
  113. 13060 GOTO
  114. 13097 REM *******************
  115. 13098 REM ** Pickup marker **
  116. 13099 REM *******************
  117. 13100 VARNAME
  118. 13110 VARNAME
  119. 13120 VARNAME
  120. 13130 IF
  121. 13140 IF
  122. 13150 IF
  123. 13160 IF
  124. 13170 IF
  125. 13180 IF
  126. 13190 IF
  127. 13200 IF
  128. 13210 RETURN
  129. 13300 VARNAME
  130. 13310 IF
  131. 13330 CHANGE MOUSE
  132. 13340 VARNAME
  133. 13350 SCREEN COPY
  134. 13360 SCREEN COPY
  135. 13365 VARNAME
  136. 13370 RETURN
  137. 13497 REM **********************************
  138. 13498 REM ** Place marker at new position **
  139. 13499 REM **********************************
  140. 13500 VARNAME
  141. 13510 IF
  142. 13520 RETURN
  143. 13530 IF
  144. 13540 IF
  145. 13550 IF
  146. 13560 SPRITE
  147. 13570 VARNAME
  148. 13580 VARNAME
  149. 13797 REM *************************
  150. 13798 REM ** Right buttonhandler **
  151. 13799 REM *************************
  152. 13800 IF
  153. 13805 SPRITE
  154. 13810 SPRITE
  155. 13820 VARNAME
  156. 13830 RETURN
  157. 13897 REM *****************
  158. 13898 REM ** Scout mover **
  159. 13899 REM *****************
  160. 13900 VARNAME
  161. 13905 IF
  162. 13910 REPEAT
  163. 13920 UNTIL
  164. 13930 IF
  165. 13935 IF
  166. 13940 VARNAME
  167. 13950 SPRITE
  168. 13997 REM **********
  169. 13998 REM ** WAR! **
  170. 13999 REM **********
  171. 14000 IF
  172. 14020 IF
  173. 14030 VARNAME
  174. 14050 IF
  175. 14060 IF
  176. 14070 IF
  177. 14080 IF
  178. 14090 VARNAME
  179. 14100 HIDE
  180. 14110 SCREEN COPY
  181. 14120 FOR
  182. 14130 SPRITE
  183. 14140 SHOW
  184. 14150 IF
  185. 14160 IF
  186. 14170 IF
  187. 14180 IF
  188. 14190 IF
  189. 14200 IF
  190. 14210 SPRITE
  191. 14220 RETURN
  192. 14230 IF
  193. 14240 IF
  194. 14250 SPRITE
  195. 14260 RETURN
  196. 14270 VARNAME
  197. 14280 BOOM
  198. 14290 IF
  199. 14300 SPRITE
  200. 14310 RETURN
  201. 14997 REM ********************
  202. 14998 REM ** Computer plays **
  203. 14999 REM ********************
  204. 15000 VARNAME
  205. 15010 NEXT
  206. 15015 IF
  207. 15020 VARNAME
  208. 15025 SCREEN COPY
  209. 15026 SCREEN COPY
  210. 15028 IF
  211. 15030 VARNAME
  212. 15040 VARNAME
  213. 15070 SPRITE
  214. 15100 FOR
  215. 15103 IF
  216. 15105 VARNAME
  217. 15110 VARNAME
  218. 15120 FOR
  219. 15125 IF
  220. 15130 VARNAME
  221. 15135 IF
  222. 15140 IF
  223. 15150 VARNAME
  224. 15160 NEXT
  225. 15168 IF
  226. 15170 NEXT
  227. 15297 REM ***********************************
  228. 15298 REM ** If pri.=0 then move downwards **
  229. 15299 REM ***********************************
  230. 15300 FOR
  231. 15310 NEXT
  232. 15397 REM ********************
  233. 15398 REM ** Scout thinking **
  234. 15399 REM ********************
  235. 15400 REPEAT
  236. 15405 VARNAME
  237. 15410 IF
  238. 15420 VARNAME
  239. 15430 VARNAME
  240. 15440 IF
  241. 15445 VARNAME
  242. 15450 REPEAT
  243. 15455 VARNAME
  244. 15460 IF
  245. 15470 VARNAME
  246. 16997 REM ************************
  247. 16998 REM ** Check about movin' **
  248. 16999 REM ************************
  249. 17000 IF
  250. 17010 IF
  251. 17020 IF
  252. 17030 IF
  253. 17040 VARNAME
  254. 17050 FOR
  255. 17060 NEXT
  256. 17070 IF
  257. 17075 IF
  258. 17080 IF
  259. 17085 IF
  260. 17090 VARNAME
  261. 1997 REM ******************
  262. 1998 REM **   Selection  **
  263. 1999 REM ******************
  264. 19996 RETURN
  265. 19997 REM *************
  266. 19998 REM ** The End **
  267. 19999 REM *************
  268. 2 REM **  STRATEGO,the computer game  **
  269. 2000 VARNAME
  270. 20000 VARNAME
  271. 20010 SPRITE
  272. 20020 WAIT KEY
  273. 2010 ON
  274. 2020 GOTO
  275. 2100 VARNAME
  276. 2110 IF
  277. 2115 IF
  278. 2120 IF
  279. 2130 IF
  280. 2140 IF
  281. 2150 GOTO
  282. 2200 VARNAME
  283. 2210 ON
  284. 2220 GOTO
  285. 2997 REM **********************
  286. 2998 REM **  About Stratego  **
  287. 29981 REM ***********************
  288. 29982 REM ** Prioritets varden **
  289. 29983 REM ***********************
  290. 29984 DATA
  291. 29985 DATA
  292. 29986 DATA
  293. 29987 DATA
  294. 29988 DATA
  295. 29989 DATA
  296. 2999 REM **********************
  297. 29990 DATA
  298. 29991 DATA
  299. 29992 DATA
  300. 29993 DATA
  301. 29994 DATA
  302. 29995 DATA
  303. 29996 REM ********************
  304. 29997 REM ** Uppstallningar **
  305. 29998 REM ********************
  306. 29999 REM 
  307. 3 REM **  programmed and designed by  **
  308. 3000 WINDOPEN
  309. 30000 REM ****************     I       *****************
  310. 30001 DATA
  311. 30002 REM ****************     II      *****************
  312. 30003 DATA
  313. 30004 REM ****************     III     *****************
  314. 30005 DATA
  315. 30006 REM ****************     IV      *****************
  316. 30007 DATA
  317. 30008 REM ****************     V       *****************
  318. 30009 DATA
  319. 30010 REM ***************     VI      *****************
  320. 30011 DATA
  321. 30012 REM ***************     VII     *****************
  322. 30013 DATA
  323. 30014 REM ***************     VIII    *****************
  324. 30015 DATA
  325. 30016 REM ***************     IX      *****************
  326. 30017 DATA
  327. 30018 REM ***************     X       *****************
  328. 30019 DATA
  329. 30020 REM ***************     XI      *****************
  330. 30021 DATA
  331. 30022 REM ***************     XII     *****************
  332. 30023 DATA
  333. 30024 REM ***************     XIII    *****************
  334. 30025 DATA
  335. 30026 REM ***************     XIV     *****************
  336. 30027 DATA
  337. 30028 REM ***************     XV      *****************
  338. 30029 DATA
  339. 30030 REM ***************     XVI     *****************
  340. 30031 DATA
  341. 30032 REM ***************     XVII    *****************
  342. 30033 DATA
  343. 30034 REM ***************     XVIII   *****************
  344. 30035 DATA
  345. 30036 REM ***************     XIX     *****************
  346. 30037 DATA
  347. 30038 REM ***************     XX      *****************
  348. 30039 DATA
  349. 30040 REM ***************     XXI     *****************
  350. 30041 DATA
  351. 30042 REM ***************     XXII    *****************
  352. 30043 DATA
  353. 30044 REM ***************     XXIII   *****************
  354. 30045 DATA
  355. 30046 REM ***************     XXIV    *****************
  356. 30047 DATA
  357. 30048 REM ***************     XXV     *****************
  358. 30049 DATA
  359. 30050 REM ***************     XXVI    *****************
  360. 30051 DATA
  361. 30052 REM ***************     XXVII   *****************
  362. 30053 DATA
  363. 30054 REM ***************     XXVIII  *****************
  364. 30055 DATA
  365. 30056 REM ***************     XXIX    *****************
  366. 30057 DATA
  367. 30058 REM ***************     XXX     *****************
  368. 30059 DATA
  369. 3010 VARNAME
  370. 3015 VARNAME
  371. 3020 FOR
  372. 3025 IF
  373. 3030 IF
  374. 3040 VARNAME
  375. 3055 VARNAME
  376. 3060 CLW
  377. 3065 NEXT
  378. 3070 WINDEL
  379. 3197 REM ******************
  380. 3198 REM ** Game markers **
  381. 3199 REM ******************
  382. 3200 WINDOPEN
  383. 3210 HIDE
  384. 3220 FOR
  385. 3230 VARNAME
  386. 3240 READ
  387. 3250 VARNAME
  388. 3260 IF
  389. 3270 IF
  390. 3280 SPRITE
  391. 3300 READ
  392. 3310 NEXT
  393. 3320 REPEAT
  394. 3330 OFF
  395. 3340 DATA
  396. 3497 REM *********************
  397. 3498 REM **    Load Game    **
  398. 3499 REM *********************
  399. 3500 VARNAME
  400. 3505 IF
  401. 3510 OPEN IN
  402. 3520 FOR
  403. 3530 INPUT
  404. 3540 NEXT
  405. 3550 INPUT
  406. 3560 CLOSE
  407. 3570 MENU$
  408. 3580 IF
  409. 3590 IF
  410. 3600 GOTO
  411. 3697 REM *********************
  412. 3698 REM **    Save Game    **
  413. 3699 REM *********************
  414. 3700 VARNAME
  415. 3705 IF
  416. 3710 OPEN OUT
  417. 3720 FOR
  418. 3730 PRINT
  419. 3740 NEXT
  420. 3750 PRINT
  421. 3760 CLOSE
  422. 3770 RETURN
  423. 3897 REM ***********************
  424. 3898 REM **  Level selection  **
  425. 3899 REM ***********************
  426. 3900 INC
  427. 3910 MENU$
  428. 3920 MENU$
  429. 3997 REM **************************
  430. 3998 REM **  Human color change  **
  431. 3999 REM **************************
  432. 4 REM **     Christian and Fredrik    **
  433. 4000 VARNAME
  434. 4010 IF
  435. 4020 MENU
  436. 4197 REM **************************
  437. 4198 REM **  Change flag status  **
  438. 4199 REM **************************
  439. 4200 VARNAME
  440. 4210 IF
  441. 4220 MENU
  442. 4397 REM *********************
  443. 4398 REM **  Quit the game  **
  444. 4399 REM *********************
  445. 4400 DEFAULT
  446. 5 REM **********************************
  447. 5000 REM ******************
  448. 5001 REM **              **
  449. 5002 REM **  Initiering  **
  450. 5003 REM **              **
  451. 5004 REM ******************
  452. 5005 REM 
  453. 5006 ON ERROR
  454. 5008 MODE
  455. 5010 DIM
  456. 5020 VARNAME
  457. 5030 RESTORE
  458. 5100 CLS
  459. 5110 IF
  460. 5130 WINDOPEN
  461. 5140 TITLE
  462. 5150 INPUT
  463. 5160 TITLE
  464. 5170 INPUT
  465. 5180 WINDEL
  466. 5192 REM *******************
  467. 5193 REM **      Name     **
  468. 5194 REM *******************
  469. 5200 WINDOPEN
  470. 5210 PRINT
  471. 5230 VARNAME
  472. 5240 IF
  473. 5250 IF
  474. 5255 IF
  475. 5260 VARNAME
  476. 5270 PRINT
  477. 5300 WINDEL
  478. 5497 REM *********************
  479. 5498 REM **  Error handler  **
  480. 5499 REM *********************
  481. 5500 VARNAME
  482. 5510 IF
  483. 5520 IF
  484. 5530 IF
  485. 5540 IF
  486. 5550 IF
  487. 5560 IF
  488. 5996 ERROR
  489. 5997 REM ********************
  490. 5998 REM **    New game    **
  491. 5999 REM *********************
  492. 6000 IF
  493. 6005 GOSUB
  494. 6007 FOR
  495. 6010 SCREEN COPY
  496. 6020 FOR
  497. 6030 VARNAME
  498. 6033 VARNAME
  499. 6040 SPRITE
  500. 6050 VARNAME
  501. 6060 IF
  502. 6070 IF
  503. 6080 SPRITE
  504. 6090 NEXT
  505. 6097 REM *********************
  506. 6098 REM ** Main place loop **
  507. 6099 REM *********************
  508. 6110 GOSUB
  509. 6120 REPEAT
  510. 6122 IF
  511. 6125 REPEAT
  512. 6130 VARNAME
  513. 6140 IF
  514. 6150 IF
  515. 6160 IF
  516. 6170 GOTO
  517. 6197 REM **********************
  518. 6198 REM ** Left sprite row  **
  519. 6199 REM **********************
  520. 6200 IF
  521. 6210 IF
  522. 6220 IF
  523. 6230 IF
  524. 6240 IF
  525. 6250 IF
  526. 6260 RETURN
  527. 6297 REM **********************
  528. 6298 REM ** Right sprite row **
  529. 6299 REM **********************
  530. 6300 IF
  531. 6310 IF
  532. 6320 IF
  533. 6330 IF
  534. 6340 IF
  535. 6350 IF
  536. 6360 RETURN
  537. 6397 REM **********************
  538. 6398 REM **   Place option   **
  539. 6399 REM **********************
  540. 6400 IF
  541. 6405 GOSUB
  542. 6410 VARNAME
  543. 6420 VARNAME
  544. 6430 IF
  545. 6437 SCREEN COPY
  546. 6438 SCREEN COPY
  547. 6440 SPRITE
  548. 6470 IF
  549. 6475 GOSUB
  550. 6495 IF
  551. 6496 RETURN
  552. 6697 REM **************************
  553. 6698 REM ** Check if markers = 0 **
  554. 6699 REM **************************
  555. 6700 VARNAME
  556. 6702 IF
  557. 6703 IF
  558. 6710 IF
  559. 6720 RETURN
  560. 6797 REM **************************
  561. 6798 REM ** Map plotting routine **
  562. 6799 REM **************************
  563. 6800 VARNAME
  564. 6820 IF
  565. 6830 IF
  566. 6840 VARNAME
  567. 6997 REM *******************************************
  568. 6998 REM ** Remove pickup sprites if none to move **
  569. 6999 REM *******************************************
  570. 7000 FOR
  571. 7002 VARNAME
  572. 7004 VARNAME
  573. 7006 VARNAME
  574. 7008 IF
  575. 7009 IF
  576. 7010 IF
  577. 7020 IF
  578. 7025 NEXT
  579. 7030 VARNAME
  580. 7040 FOR
  581. 7050 IF
  582. 7060 NEXT
  583. 7070 IF
  584. 7080 POP
  585. 7997 REM ********************
  586. 7998 REM ** Pickup routine **
  587. 7999 REM ********************
  588. 8000 VARNAME
  589. 8010 VARNAME
  590. 8030 VARNAME
  591. 8035 VARNAME
  592. 8040 IF
  593. 8045 IF
  594. 8050 CHANGE MOUSE
  595. 8060 SCREEN COPY
  596. 8070 SCREEN COPY
  597. 8075 VARNAME
  598. 8090 RETURN
  599. 8097 REM ********************************
  600. 8098 REM ** Second main loop (OK loop) **
  601. 8099 REM ********************************
  602. 8100 GOSUB
  603. 8110 SPRITE
  604. 8115 REPEAT
  605. 8120 IF
  606. 8130 REPEAT
  607. 8140 VARNAME
  608. 8150 IF
  609. 8160 IF
  610. 8170 GOTO
  611. 8397 REM **********************
  612. 8398 REM ** Check for yes/no **
  613. 8399 REM **********************
  614. 8400 SPRITE
  615. 8410 REPEAT
  616. 8415 REPEAT
  617. 8420 VARNAME
  618. 8430 IF
  619. 8440 IF
  620. 8450 GOTO
  621. 8497 REM **********************************
  622. 8498 REM ** Randomizing computer markers **
  623. 8499 REM **********************************
  624. 8500 VARNAME
  625. 8510 DEC
  626. 8520 RETURN
  627. 9997 REM **********************
  628. 9998 REM ** Prepare for game **
  629. 9999 REM **********************
  630.